package org.wyz.service;

import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.wyz.domain.User;
import org.wyz.mapper.UserMapper;

import java.util.List;

/**
 * Created by qinyg on 2018/1/24.
 */
@Service       // 业务
@Transactional // 事务
public class UserServiceImpl {

    @Autowired
    UserMapper userMapper;

    // 列表
    public List<User> findAllUser() {
        return userMapper.selectAllUesr();
    }

    /* 分页
     *
     * @参数的形参 pageNo   当前页值
     * @参数的形参 pageSize 每页大小
     */
    public Page<User> findByPage(int pageNo, int pageSize) {
        // 不用在MyBatis.xml写分页，节省做事。
        PageHelper.startPage(pageNo, pageSize);
        return userMapper.selectByPage();
    }

    /* 第二方法分页简单，不用分页插件
     *
     * @参数的形参 pageNo   当前页值
     * @参数的形参 pageSize 每页大小
     */
    public List<User> selectUserByPage(Integer pageNo, Integer pageSize, String keywords) {
        int offset = (pageNo - 1) * pageSize;

        return userMapper.selectUserByPage(offset, pageSize, keywords);
    }

    /* 添加
     *
     * @参数的形参 用户
     *
     */
    public void saveUser(User user) {
        userMapper.insertUser(user);
    }
}
